package com.nineclock.system.service;

import com.nineclock.system.dto.SysAllowedJoinCompanyUserDTO;
import com.nineclock.system.dto.SysApplyJoinCompanyUserDTO;
import com.nineclock.system.dto.SysChangeMainManagerDTO;
import com.nineclock.system.dto.SysCompanyDTO;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

public interface SysCompanyService {

    /**
     * 获取企业的详细信息
     * @return
     */
    public SysCompanyDTO queryCompanyInfo();

    /**
     * 上传企业logo
     * @param file
     * @return
     */
    String uploadCompanyLogo(MultipartFile file);

    /**
     * 更新企业的基本信息
     * @param sysCompanyDTO
     */
    void updateCompanyInfo(SysCompanyDTO sysCompanyDTO);

    /**
     * 更新企业的系统管理员用户
     * @param sysChangeMainManagerDTO
     */
   public void changeSysAdmin(SysChangeMainManagerDTO sysChangeMainManagerDTO);

    /**
     *  根据企业的关键字名称, 模糊查询企业列表
     * @param keyword
     * @return
     */
    public List<SysCompanyDTO> queryCompanyByName(String keyword);

    /**
     * 申请加入企业
     * @param sysApplyJoinCompanyUserDTO
     */
    public void applyJoinCompany(SysApplyJoinCompanyUserDTO sysApplyJoinCompanyUserDTO);

    /**
     * 审核加入企业
     * @param sysAllowedJoinCompanyUserDTO
     */
   public void allowedJoinCompany(SysAllowedJoinCompanyUserDTO sysAllowedJoinCompanyUserDTO);
}
